package com.ymatou.iapi.payment.parameter;

import com.google.gson.annotations.SerializedName;

/**
 * 头条支付请求报文
 * https://developer.toutiao.com/docs/payment/
 */
public class TouTiaoPaymentResult  {

    /**
     * 支付分配给业务方的 id
     */
	@SerializedName("app_id")
    private String appId;

    /**
     * 固定值 "tp.trade.confirm"
     */
    private String method = "tp.trade.confirm";

    /**
     * 商户签名
     */
    private String sign;

    /**
     * 签名算法，暂支持 MD5
     */
    @SerializedName("sign_type")
    private String signType = "MD5";

    /**
     * 发送请求的时间戳
     */
    private String timestamp;

    /**
     * 支付订单号
     */
    @SerializedName("trade_no")
    private String tradeNo;

    /**
     * 商户号
     */
    @SerializedName("merchant_id")
    private String merchantId;

    /**
     * 用户的唯一标识 id，开发者请传 openid，获取方法
     */
    private String uid;

    /**
     * 订单金额，单位为分
     */
    @SerializedName("total_amount")
    private long totalAmout;

    /**
     * 支付渠道，目前只支持支付宝，值为 "ALIPAY_NO_SIGN"
     */
    @SerializedName("pay_channel")
    private String payChannel = "ALIPAY_NO_SIGN";

    /**
     * 支付方式，目前只支持支付宝，值为 "ALIPAY_APP"
     */
    @SerializedName("pay_type")
    private String payType = "ALIPAY_APP";

    /**
     * 传递给支付方的支付信息，标准 json 格式字符串(JSON.stringify({url: "...."}))，不同的支付方参数格式不一样
     */
    private String params;

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getMethod() {
        return method;
    }

    public void setMethod(String method) {
        this.method = method;
    }

    public String getSign() {
        return sign;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public String getSignType() {
        return signType;
    }

    public void setSignType(String signType) {
        this.signType = signType;
    }

    public String getTimestamp() {
        return timestamp;
    }

    public void setTimestamp(String timestamp) {
        this.timestamp = timestamp;
    }

    public String getTradeNo() {
        return tradeNo;
    }

    public void setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
    }

    public String getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(String merchantId) {
        this.merchantId = merchantId;
    }

    public String getUid() {
        return uid;
    }

    public void setUid(String uid) {
        this.uid = uid;
    }

    public String getPayChannel() {
        return payChannel;
    }

    public void setPayChannel(String payChannel) {
        this.payChannel = payChannel;
    }

    public String getPayType() {
        return payType;
    }

    public void setPayType(String payType) {
        this.payType = payType;
    }

    public String getParams() {
        return params;
    }

    public void setParams(String params) {
        this.params = params;
    }

    public long getTotalAmout() {
        return totalAmout;
    }

    public void setTotalAmout(long totalAmout) {
        this.totalAmout = totalAmout;
    }
}
